/*
 * Generated via the com.flca generator
 */
package flca.voicenav;
 
import com.flca.IAppContext;
import com.flca.frw.dao.ConnectionPoolMgr;
import com.flca.frw.dao.IConnectionPoolMgr;
import com.flca.frw.util.IConfigurationHelper;
import com.google.inject.AbstractModule;
import com.google.inject.Scopes;
import com.google.inject.name.Names;
import flca.voicenav.VoiceNavConfigHelper;
import flca.voicenav.VoiceNavConstants;
import flca.voicenav.VoiceNavStartup;
import flca.voicenav.srv.VoiceNavServicesImpl;
import flca.voicenav.srv.VoiceNavServicesIntf;
 
public class VoiceNavModule extends AbstractModule implements VoiceNavConstants
{
	@Override
	protected void configure()
	{
		//-- startup engine
		bind(IAppContext.class).to(VoiceNavStartup.class).in(Scopes.SINGLETON);
		
		//-- ConfigurationHelper
		bind(IConfigurationHelper.class).to(VoiceNavConfigHelper.class).in(Scopes.SINGLETON);
		
		bind(IConnectionPoolMgr.class).to(ConnectionPoolMgr.class).in(Scopes.SINGLETON);
		bindConstant().annotatedWith(Names.named("CONFIG_DIRS")).to(CONFIG_DIRS);
		bindConstant().annotatedWith(Names.named( "MAIN_PROPERTIES")).to(MAIN_PROPERTIES);
		
		//-- #INSERT_SERVICE_BINDS
		
		bind(VoiceNavServicesIntf.class).to(VoiceNavServicesImpl.class).in(Scopes.SINGLETON);
		
		//--#INSERT_DAO_BINDS
	}
}
